

public interface InterfaceListasIndexada<T> {

	/**
	 * Elimina l'element situat en un índex concret
	 * 
	 * @param indice
	 * @return
	 */
	public T elimina(Integer indice);

	/**
	 * Determina l'índex d'un element de la llista
	 * 
	 * @param element
	 * @return
	 */
	public Integer indexDe(T element);

	/**
	 * Insereix un element en un final de la llista
	 * 
	 * @param element
	 */
	public void inserir(T element);

	/**
	 * Insereix un element en un índex concret
	 * 
	 * @param element
	 * @param indice
	 */
	public void inserir(T element, Integer indice);

	/**
	 * Examina l'element situat en un índex concret
	 * 
	 * @param indice
	 * @return
	 */
	public T obte(Integer indice);

	/**
	 * Configura l'element situat en un índex concret
	 * 
	 * @param element
	 * @param indice
	 */
	public void posa(T element, Integer indice);
}